package net.xdclass.product.service;

import net.xdclass.common.JsonData;
import net.xdclass.product.model.vo.CartItemVO;
import net.xdclass.product.model.vo.CartVO;
import net.xdclass.product.request.CartItemRequest;

import java.util.List;

/**
 * 购物车
 */
public interface CartService {
    /**
     * 添加商品到购物车
     * @param cartItem
     */
    void addCart(CartItemRequest cartItem);

    /**
     * 清空购物车
     * @return
     */
    boolean clear();

    /**
     * 查询我的购物车
     * @return
     */
    CartVO getMyCart();

    /**
     * 删除购物项
     * @param productId
     * @return
     */
    boolean deleteItem(Long productId);

    /**
     * 更新购物车
     * @param cartItem
     * @return
     */
    boolean updateCartItem(CartItemRequest cartItem);

    /**
     * 查询商品最新价格
     * @param productIds
     * @return
     */
    List<CartItemVO> confirmOrderItem(List<Long> productIds);
}
